let db = wx.cloud.database()
let _ = db.command
let searchKey = ''
let T = ''
let address = ''
let page = 0
var allGoods = []
let userlatitude =''
let userlongtitude =''
let S = 0 //筛选的距离
var LIST = []
Page({
  data:{
     list:[],
     tuijianList:[],
     zhuangtai:null
  },
  onLoad(option){
    userlatitude=option.userlatitude
    userlongtitude=option.userlongtitude
    console.log('userlatitude为:',userlatitude)
    console.log('userlongtitude:',userlongtitude)
    searchKey =  option.SearchKey
    allGoods=JSON.parse(decodeURIComponent(option.array))
    T = option.T
    address=option.address
    LIST=allGoods//查询搜索的数组
    if (searchKey.length > 0) {
      this.setData({
        zhuangtai:'已经到底了,为您推荐'
      })
    let isContain = allGoods => allGoods.name.indexOf(searchKey) != -1;
    LIST=LIST.filter(isContain);
    console.log('关键字商品列表为:',LIST)
    this.addSearch(LIST)
    this.gettuijianGoods()
    }
    // this.addSearch(searchKey)
    // if(T==1||T==0){
    // this.Search(searchKey,T,address)
    // }else if(T==2){
    //   this.SearchType(searchKey)
    // }
  },
  addSearch(List){
    for (let index = 0; index < List.length; index++) {
      const element = List[index];
      this.getDistance(userlatitude,userlongtitude,element.latitude,element.longitude)
      console.log('关键字商品element:',element)
      if(S<=5){
        this.setData({
          list:this.data.list.concat(element)
        })
       }
    }
  },
      //----------推荐商品-------------
      gettuijianGoods(){
        db.collection('send-Goods').where({
          type:this.data.list[0].type
        }).skip(5*page).get()
        .then(res=>{
         let LIST = this.data.list
          console.log('全局推荐查询成功res：',res)
          let IS = true
          for (let index = 0; index < res.data.length; index++) {
            IS = true
            for (let index2 = 0; index2 < LIST.length; index2++) {
              if(res.data[index]._id==LIST[index2]._id)
              {
                 IS = false
              }
              if(IS==true){
                this.setData({
                  tuijianList:this.data.tuijianList.concat(res.data[index])
                })
                break
              }
            }
          }
          console.log('推荐的商品为：',this.data.tuijianList)
        })
        .catch(err=>{
          console.log('全局推荐查询失败err：',err)
        })
      },
      //-----------------------
  //根据距离判断
  getDistance: function(lat1, lng1, lat2, lng2) {
    // lat1用户的纬度
    // lng1用户的经度
    // lat2商家的纬度
    // lng2商家的经度
    var radLat1 = this.Rad(lat1);
    var radLat2 = this.Rad(lat2);
    var a = radLat1 - radLat2;
    var b = this.Rad(lng1) - this.Rad(lng2);
    var s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2) + Math.cos(radLat1) * Math.cos(radLat2) * Math.pow(Math.sin(b / 2), 2)));
    s = s * 6378.137;
    s = Math.round(s * 10000) / 10000;
    S = Math.round(s * 10000) / 10000
    s = s.toFixed(2) + 'km' //保留两位小数
    S = S.toFixed(2)
    console.log('经纬度计算的距离:' + s)
    return s
},
Rad: function(d) { //根据经纬度判断距离
  return d * Math.PI / 180.0;
},
getLL(){
 wx.getLocation({
   type: 'wgs84',
  }).then(res=>{
    userlatitude = res.latitude
    userlongtitude = res.longitude
    console.log('获取用户纬度成功userlatitude:',userlatitude)
    console.log('获取用户经度成功userlongitude:',userlongtitude)
    // this.addSearch(searchKey)
  })
},
////////////////旧代码//////////////////
  SearchType(KEY){
    db.collection('send-Goods')
    .where(_.or([
      {
       name:db.RegExp({
         regexp:KEY,
         options:'i'
       })
      },
      {
        abstract:db.RegExp({
          regexp:KEY,
          options:'i'
        })
      },
    ]),
    _.and([
      
    ])
    ).get()
    .then(res=>{
      if(res.data.length!=0){
      console.log('全局模糊查询成功res：',res)
      this.setData({
        list:res.data,
        zhuangtai:'已经到底了,为您推荐'
      })
      console.log('全局模糊查询成功type：',res.data[0].type)
      db.collection('send-Goods').where({
        type:res.data[0].type
      }).skip(5*page).get()
      .then(res=>{
       let LIST = this.data.list
        console.log('全局推荐查询成功res：',res)
        let IS = true
        for (let index = 0; index < res.data.length; index++) {
          IS = true
          for (let index2 = 0; index2 < LIST.length; index2++) {
            if(res.data[index]._id==LIST[index2]._id)
            {
               IS = false
            }
            if(IS==true){
              this.setData({
                tuijianList:this.data.tuijianList.concat(res.data[index])
              })
              break
            }
          }
        }
        console.log('搜索的商品为：',this.data.list)
        console.log('推荐的商品为：',this.data.tuijianList)
      })
      .catch(err=>{
        console.log('全局推荐查询失败err：',err)
      })
     }else{
      //  搜索为空
       this.setData({
         zhuangtai:'您的搜索为空，看看其他的吧'
       })
     }
    })
    .catch(err=>{
      console.log('全局模糊查询失败err：',err)
    })
  },
  // onReachBottom:function(){
  //   page++
  //   this.Pagingload(page)
  //   console.log('渲染的页面是：',page)
  // },
  Search(KEY,T,address){
    if(T==0){
    //全局搜索
    db.collection('send-Goods')
    .where(_.or([
      {
       name:db.RegExp({
         regexp:KEY,
         options:'i'
       })
      },
      {
        abstract:db.RegExp({
          regexp:KEY,
          options:'i'
        })
      },
    ])).get()
    .then(res=>{
      console.log('全局模糊查询成功res：',res)
      this.setData({
        list:res.data
      })
    })
    .catch(err=>{
      console.log('全局模糊查询失败err：',err)
    })
  }else if(T==1){
    //社区搜索
    db.collection('send-Goods')
    .where(_.and([
      {
       name:db.RegExp({
         regexp:KEY,
         options:'i'
       })
      },
      {
        Address:db.RegExp({
          regexp:address,
          options:'i'
        })
      },
      {
        abstract:db.RegExp({
          regexp:KEY,
          options:'i'
        })
      }
    ])).get()
    .then(res=>{
      console.log('社区查询成功res：',res)
      this.setData({
        list:res.data
      })
    })
    .catch(err=>{
      console.log('社区查询失败err：',err)
    })
  }
  },
goDetail(e){
  console.log('点击了商品详情页',e.currentTarget.dataset.id)
  wx.navigateTo({
    url: '/pages/details/details?id='+e.currentTarget.dataset.id,
  })
},
})